#pragma once
//#include "MouseSource.h"
#include "event.h"
namespace Core
{
	namespace Devices
	{
		class MouseSource;
		struct MouseEvent;
		class MouseListener :
			public IListener<MouseSource,MouseListener,MouseEvent>
		{

			typedef IListener<MouseSource,MouseListener,MouseEvent> Base;
		public:
			virtual void OnMouseEvent(SourceType& mouse)=0;
		protected:

			MouseListener():Base(&MouseListener::OnMouseEvent){};

		public:

			~MouseListener(void)
			{
			}
		};
	}
}